Method for subscriber unit compressing and transmitting high speed data

ABSTRACT

Two related voiceband compression techniques are employed in order to enable an RF telecommunications subscriber unit to accommodate data signals of high speed voiceband modems and FAX machines. A High Speed Codec enables the subscriber unit to pass voiceband modem and FAX transmissions at up to 9.6 kb/s. An Ultra-High Speed Codec supports voiceband modem and FAX transmissions up to 14.4 kb/s. The High Speed Codec operates using three 16-phase RF slots or four 8-phase RF slots, and the Ultra-High Speed Codec operates using four 16-phase RF slots. Because these codecs transmit information over several RF slots which can be contiguous, the slots within RF communication channels are dynamically allocated. The Dynamic Time slot/Bandwidth Allocation feature detects and monitors the data transmission and forms a data channel from the necessary number of slots.

This application is a continuation of application Ser. No. 09/567,252,filed on May 9, 2000 U.S. Pat. No. 6,385,189; which is a continuation ofapplication Ser. No. 08/743,749, filed Nov. 7, 1996, issued as U.S. Pat.No. 6,111,870 on Aug. 29, 2000.

BACKGROUND

1. Field of the Invention

This invention relates to a communication method and, more particularly,signal processing techniques for compression of high speed datacommunication signals for improved transmission performance andincreased communication system capacity.

2. Background

Telecommunication systems are well known in the art, and today'stelephone systems employ various multiplexing techniques to transmittelephone signals of many users over a single transmission line, such aswire or fiber-optic cable. Most of these “hard-wired” systems employ aform of Time Division Multiple Access (TDMA).

Typical telephone multiplexing requires sampling of the telephone signaland transmitting the samples at a frequency much higher than thefrequency of the telephone signal. To this end, present systemsdigitally sample and encode the telephone signal, multiplex and transmitthe signal, and then receive, demultiplex and decode the signal. Onesuch sampling and encoding system is Pulse Code Modulation (PCM) inwhich analog voiceband signals are sampled at a rate of 8 kilosamplesper second with each sample represented by 8 bits. Consequently, thevoiceband signal is converted to a 64 kilobit per second (kb/s) digitalsignal.

Another form of telecommunication system is the radio telephone system.Radio telephone systems utilize a group of selected radio frequencies(RF) for carrying telephone communication signals between two locations,and typically employ a form of Frequency Division Multiple Access(FDMA). These radio systems, termed wireless communication systems, areused, for example, in rural locations to provide local telephone serviceor in mobile units to provide mobile communication services.

One category of RF communication systems employs time divisionmultiplexing to allow for TDMA of the FDMA RF communication channels.This method, called FDMA/TDMA and described in U.S. Pat. No. 4,675,863(incorporated herein by -reference), has been employed to increasecapacity of RF communication systems. However, RF communication systemsare still significantly limited in capacity when compared to hard-wiredor fiber-optic communication systems.

Consequently, to increase capacity even further, signal compressiontechniques have been used to reduce the bandwidth required fortransmission of a telephone signal over an RF channel. A typicaltechnique used for voice signals is Residual Linear Predictive Coding(RELP). RELP or similar speech compression algorithms allow a 64 kilobitper second (kb/s) sampled and quantized voice signal to be transmittedover the RF channel as a reduced bit rate (for example, 14.6 kb/s)signal. The receiver reconstructs the 64 kb/s voice signal from thereduced bit rate signal, and the listener perceives little or no loss insignal quality.

The underlying method of speech compression, including RELP, is anencoding and decoding algorithm which assumes certain characteristics ofthe harmonics of the human voice. Today, however, a large portion of thecommunication signals within a telephone network are data communicationssignals such as facsimile (FAX) or voiceband modem data. Unfortunately,RELP algorithms are not particularly compatible with these datacommunications signals because the data signals do not exhibit theharmonic characteristics of voice signals.

Accordingly, RF communication systems monitor the received signal todetect the presence of a data communication signal. Typically, datasignals representing either FAX or voiceband modem data signals up to2.4 kb/s (low speed data) have been detected and provided a specializedcompression algorithm. The receiver reconstructs the data signal withoutreducing the transmission data rate. Such a system and method isdisclosed in, for example, U.S. Pat. No. 4,974,099 (incorporated hereinby reference). Today's telephone data signals, however, are moretypically 9.6 kb/s (high speed data) or higher (ultra high speed data,such as 14.4 kb/s), and the present compression techniques do notcompress these higher data speeds satisfactorily. Compression of thesehigher data rates, and especially multiple encodings of these higherdata rates, cause a degradation of modem or FAX signal quality, and themodem or FAX machine will typically reduce the data transmission ratewhen the signals are passed through a RF communication system.

SUMMARY

A telecommunications subscriber unit receives a group of telephonesignals, including data signals each having a form of encoding, andtransmits the telephone signals on at least one radio frequency (RF)carrier. Each RF carrier has a group of information slots, and eachtelephone signal is assigned to at least on information slot so that thetelephone signal is modulated on the RF carrier. The subscriber unitmonitors and identifies the data signals, and compresses each datasignal to reduce the required transmit bandwidth of the data signal.

BRIEF DESCRIPTION OF THE DRAWING(S)

The invention is best understood from the following detailed descriptionwhen read in connection with the accompanying drawing, in which:

FIG. 1 is a block diagram of a wireless communication system.

FIG. 2 is a high level block diagram of the implementation of theCompression System of the present invention, including the DynamicBandwidth Allocation feature, and the High Speed and Ultra High SpeedData codecs.

FIG. 3A is a high level flowchart illustrating the detection andselection of high speed data encoding types, and the determination andassignment of radio channel slots in accordance with an exemplaryembodiment of the present invention.

FIG. 3B is a high level flowchart showing the process of channelallocation performed by the Channel Forming Processor upon request for aHigh Speed Data Channel according to one embodiment of the presentinvention.

FIG. 4A is a graph showing the characteristics of the A-law Quantizer.

FIG. 4B is a graph showing the Signal to Quantization noise performanceof PCM versus Uniform Quantization.

FIG. 4C illustrates the method of compression by mapping signal samplesfrom one quantization to another quantization.

FIG. 5A is a high level block diagram of the High Speed Data Encoder inaccordance with an exemplary embodiment of the present invention.

FIG. 5B illustrates a High Speed Data Encoder transmission encodingprocess in accordance with an exemplary embodiment of the presentinvention.

FIG. 6A is a high level block diagram of the High Speed Data Decoder inaccordance with an exemplary embodiment of the present invention.

FIG. 6B illustrates a High Speed Data Decoder transmission decodingprocess in accordance with an exemplary embodiment of the presentinvention.

FIG. 7A is a high level block diagram of the Ultra High Speed DataEncoder in accordance with an exemplary embodiment of the presentinvention.

FIG. 7B illustrates a Ultra High Speed Data Encoder transmissionencoding process in accordance with an exemplary embodiment of thepresent invention.

FIG. 8A is a high level block diagram of the Ultra High Speed DataDecoder in accordance with an exemplary embodiment of the presentinvention.

FIG. 8B illustrates an Ultra High Speed Data Decoder transmissiondecoding process in accordance with an exemplary embodiment of thepresent invention.

FIG. 9 is a high level flowchart illustrating an Ultra High Speedquantizing algorithm used to map the PCM quantized samples intocompressed quantized samples in accordance with an exemplary embodimentof the present invention.

DETAILED DESCRIPTION OF THE INVENTION AND THE PREFERRED EMBODIMENTSTHEREOF

A telecommunications method receives telephone signals and modulateseach of the telephone signals onto a respective transmit radio frequency(RF) carrier. Each transmit RF carrier has a predetermined number ofinformation slots, and each telephone signal is assigned to at least oneinformation slot so that the telephone signal is modulated on the RFcarrier. The telecommunications method includes a detector to receiveand monitor each of the telephone signals to detect a data signalcontained in one of the telephone signals; and an encoder for encodingthe data signal into a compressed, coded signal. The method alsoincludes a controller which checks an assignment status of eachinformation slot when the data signal is detected, and locates apredetermined number of unassigned sequential information slots for apredetermined bandwidth required to transmit the compressed, codedsignal. The assignment status indicates whether each information slot isunassigned or assigned to one of the other telephone signals. The methodalso includes a process to form a telecommunication channel from thelocated, unassigned sequential information slots, and a process tomodulate the coded signal on the telecommunication channel.

According to one aspect of the present invention, a high speed datacompression transmission system transmits a high speed data signalthrough a telecommunication channel as a compressed, coded signal. Thehigh speed data signal is received as at least one data signal block ofsamples, and the system includes a high speed data encoder and a highspeed data decoder. The high speed data encoder includes 1) a receiverfor the data signal blocks which each contain at least one data signalsample having a peak amplitude; 2) a calculator for calculating a datasignal block gain value which is proportional to the peak amplitudevalue; and 3) a quantizer selector which selects a uniform quantizercorresponding to the gain value.

The uniform quantizer has a plurality of uniformly spaced quantizinglevel values which are determined from the gain value, and the selecteduniform quantizer quantizes each data sample of the data signal blockinto a compressed data sample. The gain value and plurality ofcompressed data samples constitute the compressed, coded signal. Thehigh speed data compression transmission system includes a transmitterto transmit the compressed, coded signal through the telecommunicationchannel and a receiver to receive the signal from the telecommunicationchannel.

The high speed data decoder of the high speed data compressiontransmission system includes 1) a receiver for the compressed datasamples and the corresponding gain value; and 2) an inverse quantizerselector to select, based on the gain value, a uniform inverse quantizerhaving a plurality of uniformly spaced output values which aredetermined form the gain value. The inverse quantizer processes each ofthe compressed data samples based upon the gain value to provide a blockof reconstructed data signal samples.

According to another aspect of the present invention, an ultra highspeed data compression transmission system transmits an ultra high speeddata signal through a telecommunication channel. The ultra high speeddata signal is received as at least one data signal block of sampleshaving a first quantization, and the system includes a ultra high speeddata encoder and a ultra high speed data decoder. The ultra high speeddata encoder includes 1) a receiver for the data signal block whichcontain at least one data signal sample having a peak amplitude; 2) acalculator for calculating a data signal block gain value which isproportional to the peak amplitude; and 3) a quantizer selector toselect a new set of quantizer levels corresponding to the gain value ofthe block of samples, and each one of the new set of quantizer levelsare selected levels of the first quantization; and 4) a quantizer levelmapping processor which maps the signal sample value to a compressedlevel value for each signal sample value based upon a relationshipbetween the set of levels of the first quantization and the new set ofquantizer levels.

The gain value and the compressed data samples constitute a codedsignal. The system also includes a transmitter to transmit the codedsignal through the telecommunication channel, and a receiver to receivethe coded signal from the telecommunication channel.

The ultra high speed data decoder of the ultra high speed compressiontransmission system includes 1) a receiver for the compressed datasamples and the corresponding gain value; 2) an inverse quantizerselector to select, based on the corresponding gain value, an inversequantizer which has output values which are determined from the gainvalue and corresponding new set of quantizer levels. The inversequantizer processes each of the compressed data samples based upon thegain value to provide a block of reconstructed data signal samples.

According to another aspect of the present invention, an ultra highspeed data quantizing method maps from a first plurality of quantizedsignal samples, each signal sample having a corresponding quantizedamplitude value and at least one signal sample having a peak quantizedamplitude value, to a second plurality of quantized compressed samplesand a gain value. The method includes 1) examining each amplitude todetermine a peak amplitude value, and setting the gain valuecorresponding to the peak amplitude value; and defining for the firstplurality of quantized signal samples a predetermined number ofsuccessive segments, each segment having a number of quantized levelvalues. The quantized level values for each successive segment isrelated to the gain value, and a first segment of the predeterminednumber of successive segments corresponds to the peak amplitude of theplurality of signal samples.

The quantizing method further includes mapping each one of the quantizedsignal samples into quantized compressed samples by 1) retaining foreach one of the quantized signal values, selected ones of the number ofquantized level values for each segment until a zero-valued level isfound, and 2) setting a sign value to a negative value to indicate anegatively valued amplitude.

The Data Compression System

FIG. 1 is a diagram of a wireless telecommunication system in which maybe implemented the High Speed Data Compression features of the presentinvention. As shown, the radio telecommunications system includes a basestation 11 and a group of subscriber units 10. The base station 11simultaneously communicates with the subscriber units 10 by broadcastand reception of communication channels defined over a range ofpreselected radio frequencies. The base station 11 may also interfacewith the local telephone equipment in the Telco Central Office 12.

A typical radio telecommunications system (for example, the SLS-104,manufactured by InterDigital Communications Corporation, King ofPrussia, Pa.) utilizes 24 predetermined channels in a forward channel(base station to subscriber unit) and 24 predetermined channels in areverse channel, (subscriber unit to base station) within the 300-500Megahertz (MHz) spectral region. Base station to subscriber unitcommunication is provided through pairs of communication channelsmodulated on frequencies within this spectral region. In a typicalsystem, the base station 11 simultaneously communicates over these 24channel pairs. The 24 channels may occupy, for example, 2 MHz frequencybands. The 2 Mhz frequency band may support more channels, for example,80 channels, by employing 25 kHz channel spacing. In one embodiment ofthe system, the base station 11 can transmit to a subscriber on thelower frequency of a pair, and the subscriber unit 10 can transmit tothe base station on the higher frequency pair. Such a system isdescribed in U.S. Pat. No. 5,121,391, issued Jun. 9, 1992, entitledSUBSCRIBER RF TELEPHONE SYSTEM FOR PROVIDING MULTIPLE SPEECH AND/OR DATASIGNALS SIMULTANEOUSLY OVER EITHER A SINGLE OR A PLURALITY OF RFCHANNELS to Paneth et al. which is hereby incorporated by reference.

In order to increase communication capacity, time division multipleaccess techniques are used on each carrier frequency. In one exemplarysystem, each frequency of the channel pair is divided into four timeslots such that the base station 11 communicates simultaneously with upto four subscriber units 10 on one carrier frequency. Consequently, thebase station, using 24 channel pairs, can allow telephone signals to bemodulated on 95 channels, and use one channel for control and otheroverhead functions.

One aspect of increasing capacity in this manner is to compress thetelecommunication channels to be transmitted over the RF communicationchannel. For voice, as previously described, RELP encoding techniquescan be used. Also, low speed data and low speed facsimile datacompression techniques can be used, as are described in U.S. Pat. No.4,974,099 entitled COMMUNICATION SIGNAL COMPRESSION SYSTEM AND METHOD toLin et al. which is hereby incorporated herein by reference.

In the previously described system, three voiceband coders, RELP, LowSpeed Data, and Low Speed FAX, compress 64 kb/sec PCM signals to a 14.5kb/s signal. At 14.5 kb/s, these three coders can operate within asingle 16-phase RF slot or a double-wide 4-phase RF slot. The RELP coderis used for voice, the low speed data coder is used to pass a number ofvoiceband modem transmissions at rates up to 2400 BPS, and the low speedFAX coder is used to pass Group 3 FAX transmissions at 2400 BPS. Eachtransmitting coder has a corresponding decoder within a receiver, whichcan, or example, be assigned through the system control channel.

In order to enable the telecommunications system to accommodate highspeed voiceband modems and FAX machines, the two related voicebandcompression techniques of the present invention are employed. The codersand decoders (codecs), designated the High Speed Codec and theUltra-High Speed Codec, achieve better compressed data transmissionperformance than the low speed data and FAX coders, by employing lesscompression and hence providing more bandwidth to the data signal.

The High Speed Codec enables the telecommunications system to passvoiceband modem and FAX transmissions at up to 9.6 kb/s. The Ultra-HighSpeed Codec supports voiceband modem and FAX transmissions up to 14.4kb/s and higher. The High Speed Codec operates using three 16-phase RFslots or four 8-phase RF slots. The Ultra-High Speed Codec operatesusing four 16-phase RF slots. Preferably, the High Speed data and UltraHigh Speed Data compression algorithms pass a representation of ananalog voiceband waveform over a digital channel with constrained datarates while minimizing detrimental distortion.

Since these codecs use several RF slots, dynamic re-allocation of theslots within the RF communication channels is necessary. The DynamicTime slot/Bandwidth Allocation feature of the present invention detectsand monitors the data transmission and forms a data channel from thenecessary number of slots, but if the number of required slots is notavailable, the low speed data or low speed FAX coder is assigned to thecall.

FIG. 2 is a high level block diagram of the implementation of theCompression System of the present invention, including the Dynamic Timeslot/Bandwidth Allocation feature, and the High Speed and Ultra-HighSpeed Data codecs, for high speed data compression of the exemplaryembodiment of a wireless telecommunication system. The system includes:a Compression Selector Processor (CSP) 200, which includes a ControlUnit 201 and Monitor Section 202; a Channel Forming processor 260; andthe compression coders/decoders (CODECs) RELP 210, low speed data 220,low speed FAX 230, High Speed Data 240 and Ultra-High Speed Data 250.

The CSP 200 receives the telephone signal from the local telephoneexchange 270 and is a digital processor designed to implement monitoringof the telephone signal to identify specific types of data signals bytheir respective modem answer tones, and to initiate the set-up of thecommunication channel. The CSP 200 Monitor section 202 informs theControl Unit 201 of the presence of the data signal. The Control Unit201 is responsible for implementing the external formation of a RFcommunication channel, as well as assigning a type of compression CODEC210, 220, 230, 240 and 250.

The Channel Forming processor 260 receives a transmit channel requestfrom the CSP 200 and allocates an available RF communication slot to atelephone signal. The Channel Forming processor 260 keeps the currentsystem channel assignment information in a memory (not shown) todetermine which time slots are not currently used for other telephonesignals. As is known in TDMA systems, each channel time slot is formedwith a guard time, which is a short period of signal used to initializea receiver before data is sent. In the presence of data signalsrequiring more than one RF time slot, the Channel forming processor 260forms the channel from a predetermined number of time slots, and if thepredetermined number of time slots is contiguous, only one guard time isused.

The Channel Forming processor 260 of one exemplary embodiment of theinvention may be a Radio Processor Unit (RPU) of a network base station.The RPU can be responsible for storing channel time slot assignments andallocating channel time slots for the entire system of FIG. 1.

The RELP CODEC 210 implements the compression coding (and decoding)algorithms for voice signals. The Low Speed Data CODEC 220 and Low SpeedFAX CODEC 230, High Speed Data CODEC 240 and Ultra-High Speed Data CODEC250 implement the respective data compression algorithms for voicebanddata of the identified type.

Generally, the CSP 200 and the CODECs 210, 220, 230, 240, and 250 can beintegrated into a digital signal processor to implement data signalmonitoring, signal processing, and signal compression coding anddecoding operations. One such processor is chosen, for example, from theTexas Instruments TMS 320C5X family of Digital Signal Processor.

The operation of the compression system of the present invention is nowdescribed. Still referring to FIG. 2, when the voice call is firstestablished, the voice RELP codec 210 is initially assigned to thetelephone signal. The CSP 200 monitors the telephone signal through theMonitor section 202, and the Control unit 201 determines the type ofvoiceband signal based upon the detection of the modem answer signal.Each type of voiceband data has a particular, identifiable modem answersignal. Table 1 summarizes some of the typical various modem originateand answer characteristics, which are well known in the art. Table 1 isfor illustrative purposes and is not, however, intended to describe allpossible modem characteristics.

TABLE 1 Voiceband Modem Characteristics Answer (or backchannel)Originate V.??/ EC BPS disable Duplex fc mod fs mark space fc mod fsmark space V.16 NO B  480 FSK  200 570 390  950 FM 1400 2100 V.16 NO B 480 FSK  200 570 390 1400 FSK  100 1480 1320 digital V.19 NO  420 AM  5 DTMF V.19 alt1 NO B 1750 FSK <=300  1850  1650  DTMF V.19 alt2 NO B 420 FSK <=75 390 450 DTMF V.20 NO B  420 AM   5 MTFSK 920- 1960 V.20alt NO B  460 FSK <=75 420 480 MTFSK 920- 1960 V.21 2100 F 1750 FSK<=300  1850  1650  1080 FSK <=300  1180  980 V.22 1200 2100 F 2400 4DPSK  600 1200 4 DPSK  600 V.22 bis 2100 F 2400 16 QAM  600 1200 16 QAM 600 2400 V.23 1200 2100 B  420 FSK <=75 390 450 1700 FSK <=1200  13002100 V.23 600 2100 B  420 FSK <=75 390 450 1500 FSK <=600  1300 1700V.26 ter 2100 F/H 1800 4 DPSK <=75 1800 4 DPSK 1200 V.27 ter 2100 H 18008 DPSK 1200 1800 8 DPSK 1200 4800 v.27 ter 2100 H (B) 1800 4 DPSK 12001800 4 DPSK 1200 2400 V.29 9600 2100 H 1700 16 QAM 2400 1700 16 QAM 2400V.29 7200 2100 H 1700 8 QAM 2400 1700 8 QAM 2400 V.29 4800 2100 H 1700 4PSK 2400 1700 4 QAM 2400 V.32 9600 2100 F 1800 16 QAM 2400 1800 16 QAM2400 V.32 4800 2100 F 1800 4 PSK 2400 1800 4 PSK 2400 FAX 300 H 1800 FSKBPS chan

Returning to FIG. 2, once the type of voiceband data is determined, ifthe High Speed Data or the Ultra-High speed data compression isrequired, the CSP 200 begins to perform voice channel reassignment, andthe method of Dynamic Times lot Allocation used is described below. TheControl Unit 201 signals the Channel Forming processor 260 to form a RFcommunication channel with a predetermined number of time slots. In oneembodiment of the present invention, a time slot is automaticallyassigned to the call, but this is not required. The Channel Formingprocessor 260 examines the memory to determine the number and RF carrierlocation of available RF time slots. If the Channel Forming processorlocates the number of predetermined slots, the RF communication channelis formed from the predetermined number of RF time slots and the ControlUnit 201 is notified. The Control Unit 201 then assigns a correspondingHigh Speed Data Codec or Ultra-High Speed Data Codec to the data signal,and the compressed data signal is assigned to and modulated on theformed multiple slot RF communication channel.

If there are not enough time slots available, the Control Unit 201 isinformed and a RF communication channel is formed from a single RF timeslot, and the Control Unit 201 then assigns the low speed data CODEC orLow Speed FAX CODEC to the data signal. As previously indicated, oneembodiment of the present invention automatically assigns a time slotwhen the telephone signal is received prior to forming a multiple timeslot communication channel, and so the telephone signal is alreadyassigned a slot at this point.

The Dynamic Time Slot/Bandwidth Allocation

Table 2 summarizes the time slot requirements for the types of signalcompression:

TABLE 2 # Coder # 4-phase slots # 8-phase slots 16-phase slots RELP 2N/A 1 Low Speed Data 2 N/A 1 Low Speed FAX 2 N/A 1 High Speed Data N/A 43 Ultra-High Speed Data N/A N/A 4

Since the High Speed Encoder modulates data on both a three slot16-phase channel and a four slot 8-phase channel, its compressed datadesirably fits into one of the two channels having less bandwidth. Thebit availability for the various channel types of the embodiment for thedescribed radio telecommunication system of FIG. 1 is shown in Table 3.

TABLE 3 Mod start A B end Data Bits/ Level, Slots Mode nulls preamble CWblock block nulls Block 16-PSK, 1 voice/channel 0  5 3  80  84 8 328test 16-PSK, 3 voice (HSD) 0  5 3 262 262 8 1048  16-PSK, 4 voice (UHSD)0  5 3 352 352 8 1408  8-PSK, 1 channel test 0 14 4 154  0 8 462 8-PSK,4 voice (HSD) 0 14 4 347 347 8 1041  4-PSK, 2 voice/ 0 13 6 160 173 8328 channel test BPSK, 1 RCC 8 44 8 112  0 8 112 (UW) BPSK, 1 Refinement0 52 8 112  0 8 112 (UW)

In Table 3, “Nulls” indicates that no modulation is present, thePreamble is a bit synchronization patter, and “CW” stands for codeword,which includes call control, call processing and signaling information.The A-Block and B-Block represent a first and second 22.5 msec block ofcompressed voiceband data samples.

As seen in Table 3, the four slot 8-phase channel carries fewer bitsthan the three slot 16-phase channel. The High Speed Encoder'scompressed output block of one embodiment of the present invention,therefore, may occupy 1041 bits or fewer. Table 4A shows the allocationof bits of the High Speed Data Encoder's compressed output block.

TABLE 4A Number Data Bits per Instance Quantity Protected of Bits CodedSample 5 180 yes 900 Coded Gain 6 1 yes 6 Protected Spare 1 6 yes 6Hamming Parity 7 16 N/A 112 Spare 1 24 no 24 Total Per Block 1048

In Table 4A “Protected” indicates that forward error correction (FEC) isapplied to the bit stream. The Ultra-High Speed Encoder's bit streammodulates a four slot 16-phase channel, from which 1408 bits areavailable for the coder's data in each 22.5 msec time period.

Table 4B shows the allocation of bits of the Ultra-High Speed DataEncoder's compressed output block.

TABLE 4B Number Data Bits per Instance Quantity Protected of Bits CodedSample 7 180 yes 1260 Coded Gain 7 1 yes 7 Protected Spare 13 1 yes 13Hamming Parity 7 16 N/A 112 Unprotected 16 1 No 16 Spare Total Per Block1408

The High Speed Data and Ultra High Speed Data compression techniquesdescribed below are embodiments of the present invention that mayrequire multiple time slit slots for a communication channel, but othercompression techniques of the same spirit as that described herein canbe developed for other specific types of data signals which do notnecessarily follow the voiceband modem characteristics describedpreviously. These other embodiments can also employ the Dynamic Timeslot/Bandwidth Allocation method as used in the present invention.

The general Dynamic Time slot/Bandwidth Allocation method is nowdescribed. FIG. 3A illustrates the process of Dynamic Timeslot/Bandwidth Allocation as implemented in, for example, the CSP 200 ofFIG. 2. Referring to FIG. 3A, when the voice call is first established,the voice monitoring step 301, monitors the telephone to detect a datasignal. At step 301, the RELP codec 210 is initially assigned to thetelephone signal. However, when a data signal is present, the decisionstep 302 determines the type of voiceband signal based upon thedetection of the modem answer signal.

If the data is low speed data or low speed FAX, step 303 assigns the lowspeed assignment process to which, for example, a single RF carrier slothas been assigned. Then step 304 determines whether the data signal isFAX or low speed data, and assigns the respective algorithm steps 305and 306 of the Low Speed FAX Codec 230 or Low Speed Data Codec 220.

If the signal is of a high speed data type at step 302, then, the nextstep 307 requests a High Speed Data Channel from the Channel FormingProcess 260, and further determines from the modem answer signal whetherthe data signal requires High Speed Data or the Ultra-High Speed Datacompression is required in order to request the correct type of channel.

FIG. 3B shows the process of channel allocation performed by the ChannelForming Processor 260 upon request for a High Speed Data Channel fromstep 307 of FIG. 3A. The Channel Forming Processor can be a base stationradio processing unit (RPU) of the exemplary prior art system previouslydescribed, and the RPU can allocate RF carrier time slots to subscribercommunications through a communication channel.

Beginning at step 320 of FIG. 3B, the processor normally allocates avoice channel for a telephone call; however, as known by one skilled inthe art, any initial process allocation can be chosen. Next, step 321checks for a request for a High Speed Data Channel from step 307 of FIG.3A. If no request is present, the allocation remains in the defaultmode, which is voice for this exemplary embodiment. If a request ispresent, step 322 checks for subscriber provisioning to determinewhether the subscriber is provisioned to accept a High Speed DataChannel. If the subscriber is not provisioned to accept a High SpeedData Channel, a Low Speed Data/Fax channel is assigned at step 323 usinga predetermined number of slots.

If the subscriber is provisioned for a High Speed Data Channel, step 324determines both if the request is for an ultra high speed data channeland whether the subscriber is provisioned to accept a High Speed DataChannel of the ultra high speed type (“UHSD Channel”). If so, step 325checks whether a predetermined number of RF carrier slots are available,and if so then step 326 creates the UHSD Channel. Step 325 may beembodied by a processor which checks a memory containing the currentsystem channel assignments to find whether a required number of sixteenphase RF time slots are available (four for the exemplary embodiment).If the required number of slots are not available, then the processlooks to see if the channel can be created as a high speed data type(“HSD Channel”) as described subsequently in step 328.

If the request or the subscriber provisioning indicates the High SpeedData Channel should not be formed as an ultra high speed type UHSDChannel in step 324, step 327 checks whether the request or subscriberprovisioning indicates the High Speed Data Channel should be formed as ahigh speed type HSD Channel. If not, the low speed data channel isformed at step 323 as previously described, but if the HSD Channel isrequested or provisioned, then step 328 checks whether the predeterminednumber of RF carrier time slots are available for the HSD Channel.

Step 328 may be embodied by a processor which checks a memory containingthe current system channel assignments to find whether a first requirednumber of time slots (sixteen phase RF time slots) are available (threefor the exemplary embodiment), and if not, if a second required numberof time slots (eight phase RF slots) are available (four for theexemplary embodiment). If the required number of slots is available, thetime slots are assigned and the HSD channel formed in step 329. If theHigh Speed Channel Availability step cannot find the required number ofchannels, then the step 323 simply assigns the low speed channel.

Returning to FIG. 3A, at step 308, the process checks the response tothe High Speed Data Channel request. If at step 308 no High Speed DataChannel has been formed, then the steps 303 and sequence are executed toassign the low speed algorithms. If the High Speed Data Channel isaccepted, the High Speed Channel Availability step 309 determines whichtype of channel has been assigned. If the High Speed Data Channelcorresponds to ultra high speed data, the coding algorithms of theUltra-High Speed Data CODEC 250 are executed at step 310, and if theHigh Speed Data Channel corresponds to high speed data, the codingalgorithms of the High Speed Data CODEC 240 are executed at step 311.

The High Speed and Ultra High Speed CODECs

The High Speed Codec 240 and Ultra High Speed Codec 250 providecompression of a bi-directional data channel of the present inventionwith sampled telephone signals (Pulse Code Modulation (PCM) telephonesignals in the exemplary embodiment) as the input signal and outputsignal. The telephone signals provided to the sample compression processis typically 64 kb/s A-law or Mu-law PCM, but 128 kb/s 16 bit integersamples, or other types, can be used by employing a conversion process.The compression process compresses the 64 kb/s (or 128 kbs) sample bitstream to a lower data rate. The lower rate data is sent over the RFchannel to the expansion process, which expands the lower rate data backto reconstructed 64 kb/s (or 128 kb/s) sample bit stream. The objectiveof the coder is that the synthesized or reconstructed samples be a closerepresentation of the original sampled signal.

In PCM systems, analog voiceband signals are converted into a sequenceof digital samples at a sampling rate of 8 Kilo-Samples/second. Thesamples are 8 bits wide, resulting in 256 possible quantization levels.When analog signals are sampled, an important figure of merit is theSignal to Quantization Noise Ratio (SQNR). For a uniformly spacedquantizer, the SQNR is 6B−1.24 dB where B is the number of bits perquantized sample.

An 8 bit uniform quantizer therefore has an SQNR of 46.76 dB, which isexcellent for speech signals. This SQNR is only achieved if the originalanalog signal has an amplitude that occupies the entire dynamic range ofthe quantizer. If the dynamic range of the original signal exceeds thatof the quantizer, clipping occurs. This is a very undesirable type ofdistortion for both speech and voiceband modem signals. If the originalsignal has a smaller dynamic range than that of the quantizer, theresulting SQNR is less than the optimum 46.76 dB. For every dB thesignal's dynamic range is less than the quantizer's dynamic range, thereis a loss of 1 dB of SQNR.

Since voiceband signals used in telephony have wide dynamic range, auniform quantizer may not be the optimum choice. Thus, non-uniformquantizers are employed. There are two standards for non-uniformquantizers for PCM: Mu-law and A-law, and these standards are well knownin the art, and are described in Chapter 8, Communication Systems, bySimon Haykin, which is incorporated herein by reference. Both techniquesuse logarithmically spaced quantizer levels in order to increase thedynamic range of the quantizers. FIG. 4A shows the characteristics ofthe A-Law quantizer.

The spacing between quantizer levels at high signal levels is largerthan the spacing at low levels. The result is a more uniform SQNR on asample to sample basis. While the best SQNR for these quantizers is lessthan that of the 8-bit uniform quantizer, these quantizers can provide agood SQNR over a wider range of signal levels.

FIG. 4B compares the SQNR performance vs. signal level for A-Law and an8-bit uniform quantizer. Although the uniform quantizer shows superiorperformance at high signal levels, the A-law quantizer retains a goodSQNR over a wider dynamic range.

Voiceband modems operate well in a telephone network that employs eitherMu-law or A-law 64 kb/s PCM because of the wide dynamic range. Thetransmit output level of these modems is high in order to use thechannels to their fullest, but telephone channels have varying signallevel losses. As a result, even though the modem output level is fixedat a high level, the level at another point in the network can besignificantly lower. PCM's Dynamic range compensates for this situation.

Compressing 64 kb/s PCM to a lower data rate decreases the number ofbits per sample and usually results in a significant decrease in SQNR.Distortion due to compression is minimized by the present invention bydynamically designing a quantizer to fit the dynamic range of the inputsignal. Once the two dynamic ranges are matched, the samples arequantized using a quantizer with the newly defined level spacing.

FIG. 4C illustrates a simple example of the method of compression bymapping the signal samples from one quantization to anotherquantization. A block of signal samples 410 consists of three samples411, 413 and 415. A first set of quantization levels 420 indicates theapproximate value of the sample amplitudes 412, 414 and 416. However,the quantization levels require that a certain number of informationbits, five bits for the 20 levels shown of the first quantization, betransmitted to a receiver to represent one of the levels of the firstquantization. To send three sample values corresponding to the threesamples 411, 413, and 415, fifteen bits are desirable.

The exemplary method of the present invention defines a new set oflevels for each block of signal samples based upon the peak amplitude.As shown in FIG. 4C, the block of samples 410 has sample 413 which has apeak amplitude value 414. The method defines a new quantization set oflevels by defining the peak amplitude 414 as the highest level value,and determines a predetermined number of level values below thisamplitude. As shown in FIG. 4C, this corresponds to 5 level values. Forthis new quantization, only three bits are necessary to define a levelvalue, but the peak amplitude value must also be sent as a scalingfactor to indicate the relationship between the new quantizer levelvalues and the original quantizing level values. Consequently, five bitscorresponding to the original peak amplitude value and nine bits (threeper sample) are transmitted for the block of samples 410, or fourteenbits are necessary. The example shows that one fewer bit is sent;however, if there are ten samples in the block, the original quantizingmethod requires sending fifty bits, but the new quantizer only requiressending thirty five bits.

The following describes embodiments designed for the Mu-law and A-lawstandards. However, the techniques disclosed are easily extended to anysystem receiving samples quantized with a non-uniform compoundingquantizer.

The High Speed Data CODEC

FIG. 5A is a high level block diagram of the High Speed Data Encoder.The encoder of the exemplary embodiment transforms data between 64 kb/sPCM and a 46.58 kb/s Forward Error Correction (FEC) Encoded compresseddata stream. The compressed data rate is 40.267 kb/s, and the remainingtransmitted bit stream is used for error correction.

As shown in FIG. 5A, the High Speed Data Encoder of the presentinvention includes an optional Buffer 510, a PCM Expander 520, a GainCalculation process 522, a Delay 521, a Data Sample Quantizer 523, andan optional Transmission Encoding process 530. The Transmission encodingprocess 530 further includes a FEC encoder 532 and an Interleaver 531.

The optional Buffer 510 holds a predetermined number of samples tocreate a block of samples for the High Speed Data compression process.Alternatively, the samples can be received in a block format. The PCMExpander 510 converts the A-law or Mu-law PCM samples to linear samples.The Gain Calculation process 522 calculates the Quantized Gain value forthe block of samples, and the Data Sample Quantizer uses the QuantizedGain value to create a uniformly spaced quantizer with quantizationlevel values scaled by the Quantized Gain value. The delay shows thatthe Quantized gain value is determined before the compression processcreates Encoded Quantized Samples, and the Transmission Encoding Process530 is used to provide error correction coding for transmission of theencoded Quantized Gain and Encoded Quantized Samples.

The operation of the High Speed Data compression encoder is nowdescribed. As shown in FIG. 5A, the 64 kb/s PCM samples (A-law orMu-law) are received by a Buffer 510. The Buffer 510 provides the PCMsamples as 22.5 millisecond blocks of samples. At the 8Kilo-Sample/second rate of the PCM, each block contains 180 samples. TheReceived PCM frame is fed into the PCM Expander 520, which converts theMu-law or A-law samples into 16 bit linear samples (16 bit integersamples).

The resulting block of linear samples, which are 16 bit integer samplesin the exemplary embodiment, is fed to the Gain Calculation process 522,which finds the sample in the block with the largest amplitude value(absolute value). The amplitude of this sample determines the QuantizedGain value for the block. The Quantized Gain value can be the amplitudevalue, the difference between the maximum sample value and the largestblock amplitude, or a multiplier value. The Quantized Gain value isquantized using a 64 level logarithmically spaced quantizer. The GainCalculation process 522 provides both the Quantized Gain and the CodedQuantized Gain value. The Coded Quantized Gain value is a 6 bit numberthat represents one of the 64 levels in the logarithmically spaced gainquantizer.

The Quantized Gain value from the Gain Calculation 522 and the block ofsamples from the PCM Expansion process are provided to the Data SampleQuantizer 523. The delay 521 is shown to indicate that the GainCalculation process 522 must complete the task over the block before thesamples are compressed by the Data Sample Quantizer 523. The Data SampleQuantizer 523 quantizes the 180 samples in the block using a 32 leveluniformly spaced quantizer. The quantizer levels are dynamicallyadjusted on a block by block basis using the Quantized Gain value.Therefore, the uniformly spaced quantizer levels range form +QuantizedGain value to −Quantized Gain value for the current set of 180 samples.The Sample Quantizer outputs only the 5 bit encoded representation ofthe 180 samples since the compression does not require the actualquantized values.

The Encoded Quantized Gain and the Encoded Quantized Samples areoptionally fed into the Transmission encoding process 530, whichincludes the Interleaver 531 and FEC Encoder 532. The FEC Encoder 532 isa (64,57) Extended Hamming encoder, and the Hamming code is capable ofcorrecting a single bit error and detecting a double bit error in each64 bit block. The FEC Encoder 532 receives the Coded Quantized Gain andthe Coded Quantized Samples and provides them to the Interleaver 531,and the Interleaver 531 outputs Encoded Compressed Data. The Interleaverof one exemplary embodiment of the present invention is a 16*64 bitblock interleaver.

FIG. 5B shows one exemplary embodiment of the Transmission encodingprocess 530 including the Interleaver 531 and FEC Hamming Encoder 532. A64 by 16 bit block is shown. Each of the 16 rows represents a single 64bit Extended Hamming codeword. At the encoder, data is read into theinterleaver block from left to right across the rows starting withcodeword 0 bit 0 and ending with codeword 15 bit 63. Bit positions(columns) 0, 1, 2, 4, 8, 16, and 32 are skipped and filled with zero.After filling the Interleaver 531, Hamming encoding is performed by theFEC Encoder 532 on the 57 data bits in each row. The Hamming parity bitsare inserted into bit positions 1, 2, 4, 8, 16, and 32 as shown in thediagram. The parity check bit is inserted into bit position 0. Theparity bits and parity check bits for all 16 codes can be computed atthe same time using a 16 bit wide exclusive OR function. The parity bitsPi are computed as follows:

 Pi=XOR Codeword Bit[k] i= 0.6 ( k−1)&2^(i)≠0; where “&” is a bitwisebinary AND function

After the parity bits are inserted into their bit positions, the ParityCheck Bits PC (one bit for each code) are computed as follows:${PC} = {\overset{63}{\underset{k = 1}{XOR}}\quad {Codeword}\quad {{Bit}\lbrack k\rbrack}}$

Once the parity bits have been computed and inserted, data is read outof the interleaver from top to bottom down the columns starting atCodeword 0, Bit 0 and ending with Codeword 15, Bit 63.

FIG. 6A is a high level block diagram of the High Speed Data Decoder inaccordance with an exemplary embodiment of the present invention. TheHigh Speed Data Decoder implements the inverse of the data compressionprocess of the High Speed Data Encoder, and the Decoder includes anoptional Transmission Decoding process 601, a Frame Gain Decoder 610, aData Sample Dequantizer 620, a PCM Compander 630, and a Buffer 640. TheTransmission Decoding process 801 includes a Deinterleaver 603 and a FECDecoder 602.

The operation of the High Speed Data Decoder is now described withreference to FIG. 6A. The received compressed data is optionally fedinto the Deinterleaver 603, which is a 16*64 bit block deinterleavingprocess. The output of the Deinterleaver 603 is fed into the FEC decoder602, which is a (64,57) extended Hamming decoder. The Hamming decodercan correct 1 bit error and detect 2 bit errors per block. FIG. 6B showsthe deinterleaver and Hamming decoding process of one embodiment of thepresent invention. Data is read into the Deinterleaver 603 from top tobottom starting with codeword 0 bit 1 and ending with codeword 15 bit63. The syndrome is computed as follows:

Compute Parity Bits:

Pi=XOR Codeword Bit[k] i=0.5 (k−1)&2^(i)≠0; where “&” is a bitwisebinary AND function Syndrome=concatenation P 5|P 4|P 3|P 2|P 1|P 0

The Parity Check Bits (one bit for each code) are computed as follows:${PC} = {\overset{63}{\underset{k = 1}{XOR}}\quad {Codeword}\quad {{Bit}\lbrack k\rbrack}}$

The numerical representation of the syndrome indicates the bit position(if any) where a bit error has occurred. When a bit error has occurred,the bit is inverted (corrected) if the parity check bit for that code isset. Otherwise, it is assumed that there are 2 (or more) bit errors inthe code and the syndrome is incorrect. If the syndrome is zero, no biterror has occurred. As in the encoder case, the parity bits and theparity check bits for all 16 codewords can be computed at the same timeusing a 16 bit wide exclusive OR operation.

Returning to FIG. 6A, the decoded data from the FEC Decoder 602 consistsof the Encoded Quantized Samples and Encoded Quantized Gain. The EncodedQuantized Gain is provided to the Gain Decoder 610 which reads theQuantized Gain value from a table using the Encoded Quantized Gain asthe index into the table. As mentioned previously, the Encoded QuantizedGain represents a level value of a 64 level logarithmically spacedquantizer.

The Quantized Gain value is provided to the Data Sample Dequantizer 620,where it is used to scale the level values of a 32 level uniformquantizer level table. The scaled quantizer table decodes the EncodedQuantized Samples into a block of Linear Quantized Samples.

The block of Linear Quantized Samples are converted to a block of PCMsamples (A law or Mu law) by the PCM Companding Process 630. The blockof PCM samples is then optionally provided to the Buffer 640 whichprovides the PCM samples as an output 64 kb/s signal.

The Ultra High Speed CODEC

FIG. 7A is a high level block diagram of the Ultra-High Speed DataEncoder. The Ultra-High Speed Data Coder performs data compression andexpansion of the ultra high speed voiceband modem signals. The Codertransforms data between 64 kb/s PCM and a 62.58 kb/s FEC Encodedcompressed data stream. The actual compressed data rate is 56.311 kb/s,and the remaining bit stream is used for error correction data. TheUltra-High Speed Codec is similar to the High Speed Codec.

As shown in FIG. 7A, the Ultra High Speed Data Encoder of the presentinvention includes an optional Buffer 710, an optional Sample FormatPre-processor 720, a Gain Calculation process 722, a Delay 721, a DataSample Quantizer 723, and an optional Transmission Encoding process 730.The Transmission encoding process 730 further includes a FEC encoder 732and an Interleaver 731.

The optional Buffer 710 holds a predetermined number of samples tocreate a block of samples for the Ultra High Speed Data compressionprocess. The Sample Format Pre-processor 710 removes the A-law, or otherstandard transmission formatting of the PCM samples and also convertsthe sample values to a predetermined numerical format, such as theirdecimal equivalents, for convenience in subsequent processing. The GainCalculation process 722 calculates the Quantized Gain value for theblock of samples, and the Data Sample Quantizer uses the Quantized Gainvalue to create a set of quantizer levels with predetermined spacing andwith quantization level values scaled by the Quantized Gain value. Thedelay shows that the Quantized gain value is determined before thecompression process creates Encoded Quantized Samples, and theTransmission Encoding Process 730 is used to provide error correctioncoding for transmission of the encoded Quantized Gain and EncodedQuantized Samples.

The operation of the Ultra-High Speed Data compression process is nowdescribed. The 64 kb/s PCM samples (A-law or Mu-law) are provided to theBuffer 710. The Buffer 710 provides the PCM samples as 22.5 millisecondblocks of samples. At the 8 Kilosample/second rate of the PCM, eachblock contains 180 samples.

Unlike the High Speed Codec, the Ultra-High Speed codec does not convertthe PCM samples to linear samples. Instead, the 8 bit PCM data isconverted to a predetermined type of format for sample representation.In the exemplary embodiment, for Mu-law, no operation is required toconvert to the format, but for A-law, the Sample Format Pre-processor720 converts the samples to predetermined level value format before thesubsequent quantizer processing. As apparent to one skilled in the art,the Mu-law samples could be converted to A-law representation, or inanother exemplary embodiment, both formats could be converted to a thirdpredetermined format.

In the Ultra-High Speed Codec it is desirable that the PCM compressiontype be the same at both the transmit and receive ends of the link.Otherwise, without further processing, the differences between theMu-law and A-law characteristics may cause non-linearity in theend-to-end characteristics of the compression coding.

The received sample block in the predetermined sample format is providedto the Gain Calculation process 722, which finds the sample in the blockwith the largest amplitude value (absolute value). The amplitude of thissample determines the Quantized Gain for the block. The Quantized Gainrequires 7 bits since the sign bit of the amplitude is not used.

Table 5 shows how numbers are represented in A-law and Mu-law standards.The absolute value of the sample corresponding to these respectiverepresentations is determined and the maximum amplitude calculated.

TABLE 5 Dec aLaw aLaw uLaw uLaw number Equiv Hex Equiv Hex 127 255 FF128 80 112 240 F0 143 8F 96 224 E0 159 9F 16 144 90 239 EF 2 130 82 253FD 1 129 81 254 FE 0 128 80 255 FF −1 1 01 126 7E −2 2 02 125 7D −16 1610 111 6F −96 96 60 31 1F −112 112 70 15 0F −127 127 7F 0 00

The Quantized Gain from the Gain Computation Process 722 and the 2'scomplement block are provided to the Data Sample Quantizer 723 after theQuantized Gain value is calculated, as shown by the presence of thedelay 721.

The Data Sample Quantizer 723 creates a new quantizer with a set ofquantizer levels from the A-law or Mu-law block of samples. Thefollowing discussion describes how the new quantizer is determined for ablock of samples. The A-law quantizer divides the range of inputamplitudes into 7 segments, and the Mu-law quantizer divides the rangeof input amplitudes into 8 segments. For convenience, the followingdiscussion describes the A-law process with 7 segments, but it isobvious to one skilled in the art to extend the A-law discussion tocompression of Mu-law samples.

Each segment (except the first) has a range of amplitudes that is halfthat of the next one, and each segment (except the first) has 16quantization level values. As a result, the quantizer step size in eachsegment is twice that of the previous one. Table 6 lists the A-lawquantizer segments along with their amplitude ranges and step sizes ofone exemplary embodiment.

TABLE 6 Input Normalized Segment Amplitude Amplitude Normalized NumberRange Range Step Size A-Law Code 1  0 . . . 31   0 . . . 1/64 1/2048  0. . . 31 2 32 . . . 63 1/64 . . . 1/32 1/1024 32 . . . 47 3  64 . . .127 1/32 . . . 1/16 1/512 48 . . . 63 4 128 . . . 255 1/16 . . . 1/8 1/256 64 . . . 79 5 256 . . . 511 1/8 . . . 1/4 1/128 80 . . . 95 6  512. . . 1023 1/4 . . . 1/2 1/64  96 . . . 111 7 1023 . . . 2047 1/2 . . .1   1/32 112 . . . 127

The samples representing the input data signal can span the entiredynamic range of the A-law quantizer, and the A-law quantizer isconverted to a new quantizer by eliminating selected ones of the A-lawquantizer levels. The following illustrates the process if the resultingnew quantizer has uniform level value spacing and all segments are usedfor representing a block of samples. The step size of the last segment,{fraction (1/32)}, is the largest step size in the quantizer, therefore,all quantizer level values in the last segment are retained. The sixthsegment has a quantizer level value step size of {fraction (1/64)}. A{fraction (1/32)} step size in the seventh segment determines that everyother quantizer level in the sixth segment is eliminated, resulting in astep size of {fraction (1/32)}. Similarly, this process is repeated forthe fifth to third segments. The second and first segments combined onlyspan a range of {fraction (1/32)}, and therefore none of the quantizerlevels are retained. This results in 31 positive levels and 31 negativelevels, and a zero level is retained to separate the first positivesegment and the first negative segment, giving a 63 level uniformquantizer.

Next, the process computes the peak amplitude of a block of samples anddetermines which A-law segment contains that amplitude. For that blockof data, all segments higher than this “Peak Segment” are ignored. Thestep size of the Peak Segment defines the uniform quantizer's step size.Therefore, in the resulting uniform quantizer for the block, allquantizer levels in the Peak Segment are retained, half the levels inthe next lower segment are retained, and quantizer level values areassigned until either the last segment is reached or no furtherquantizer level values are available.

The method of operation of Ultra High Speed quantizer, a 128 levelquantizer, of an exemplary embodiment of the present invention is shownin FIG. 9.

At step 904, the method receives a block of companded samples (such asA-law or Mu-law companding).

At step 906, the peak amplitude sample in the block and thecorresponding segment is determined, and the peak amplitude value is thepeak segment.

At step 910, retain every quantizer level value of the peak segment.

At step 912, unless the zero level has been reached, retain all 16levels of the next segment.

At step 914, unless the zero level is reached, retain all 16 levels inthe next segment.

At step 916, unless the zero level is reached, retain every other levelvalue (8 level values) in the next segment.

At step 918, unless the zero level is reached, retain four levels in thenext lowest segment.

At step 920, unless the zero level is reached, retain 2 levels of thenext lowest segment.

At step 922, unless the zero level is found, retain 1 level of the nextlowest segment.

At step 924, retain the zero level.

Finally, at step 926, create the negative levels using equal magnitudesas the positive levels, but opposite sign, by setting a sign value.

The peak amplitude (7 bits) and 180 7-bit coded samples comprise thecompressed output from the Ultra-High Speed Encoder's compressionprocess.

Returning to FIG. 7A, the Encoded Quantized Gain and Encoded QuantizedSamples are provided to the Transmission Encoding process 730. Theexemplary embodiment of the Transmission encoding process 730 includesthe FEC Encoder 732, which is, for example, a (87,80) Hamming encoder.The Hamming code is capable of correcting a single bit error in the 87bit block. The FEC Encoder provides the forward error correction encodeduniformly quantized and compressed data samples into the Interleaver731, which is, for example, a 16*87 bit block interleaver. TheInterleaver 731 provides Encoded Compressed Data for modulation on theRF communication channel.

FIG. 7B is a block diagram of the Transmission Encoding process of theexemplary embodiment of the Ultra High Speed Data Encoder. An 87 by 16bit block is shown. Each of the 16 rows represents a single 87 bitHamming codeword. At the encoder, data is read into the interleaverblock from left to right across the rows starting with codeword 0 bit 1and ending with codeword 15 bit 86. Bit positions (columns) 1, 2, 4, 8,16, 32 and 64 are skipped and filled with zero. The last column/word ofthe interleaver block receives special treatment. It only contains datain its first 3 rows/bit positions. The remaining rows/bit positions arezero filled.

After filling the interleaver, Hamming encoding is performed on the 80data bits in each row. The Hamming parity bits are inserted into bitpositions 1, 2, 4, 8, 16, 32 and 64 as shown in the diagram. The paritybits for 6 codes can be computed at the same time using a 16 bit wideexclusive OR function of the DSP. The parity bits Pi are computed asfollows, and shown in Table 7:

Pi=XOR Codeword Bit[k]i=0.6 (k−1)&2^(i)≠0; where “&” is a bitwise binaryAND function

TABLE 7 Parity Bit XOR Set P0 1, 3, 5, 7, . . . 85, 87 P1 2-3, 6-7, . .. , 86-87 P2 4-7, . . . , 84-87 P3 8-15, 24-31, 40-47, 56-63, 72-79 P416-31, 48-63 P5 32-63 P6 64-87

Once the parity bits have been computed and inserted, data is read outof the interleaver from top to bottom down the columns starting atCodeword 0, Bit 1 and ending with Codeword 15, Bit 87.

Table 8 shows the interleaver block. There are 88 words numbered 0 to87. The first word is unused but maintained for similarity to HSD. Thefirst word is not transmitted. The numbers 0 to 1266 represent the 1267bits from the 181 words. “P” of Table 6 stands for parity.

TABLE 8 Word/Bit 15 14 13 . . . 2 1 0  0 U U U . . . U U U  1 P0 P0 P0P0 P0 P0  2 P1 P1 P1 P1 P1 P1  3 1188 1109 1030 160 80  0  4 P2 P2 P2 P2P2 P2  5 1189 1110 1031 161 81  1  6 1190 1111 1032 162 82  2  7 11911112 1033 163 83  3  8 P3 P3 P3 P3 P3 P3  9 1192 1113 1034 164 84  4 101193 1114 1035 165 85  5 11 1194 1115 1036 166 86  6 12 1195 1116 1037167 87  7 13 1196 1117 1038 168 88  8 14 1197 1118 1039 169 89  9 151198 1119 1040 170 90 10 16 P4 P4 P4 P4 P4 P4 17 1199 1120 1041 171 9111 18 1200 1121 1042 172 92 12 . . . . . . 31 1213 1134 1055 185 105  2532 P5 P5 P5 P5 P5 P5 33 1214 1135 1056 186 106  26 . . . . . . 62 12431164 1085 215 135  55 63 1244 1165 1086 216 136  56 64 P6 P6 P6 P6 P6 P665 1245 1166 1087 217 137  57 . . . . . . 86 1266 1187 1108 238 158  7887   0   0   0 239 159  79

FIG. 8A is a block diagram of the Ultra High Speed Data Decoder of thepresent invention. The data expansion process is the inverse of the datacompression process, and the Decoder includes an optional TransmissionDecoding process 801, a Gain Decoder 810, a Data Sample Dequantizer 820,an optional Sample Format Re-Processor 830, and an optional Buffer 840.The optional Transmission Decoding process 801 includes a Deinterleaver803 and a FEC Decoder 802.

As shown in FIG. 8A, the received Encoded Compressed Data is provided tothe Transmission Decoding process 801 to remove transmission encodingand correct for transmission errors. The Transmission Decoding process801 of the exemplary embodiment of the present invention includes theDeinterleaver 803, which is a 16*87 bit block deinterleaver. The outputof the Deinterleaver 803 is provided to the FEC Decoder 802, which is a(87,80) Hamming decoder. The Hamming decoder can correct 1 bit error perblock.

FIG. 8B shows an embodiment of the Transmission Decoding process of theUltra High Speed Data Decoder of an embodiment of the present invention,including the deinterleaving and Hamming Decoding. Encoded CompressedData is read into the Deinterleaver from top to bottom starting withcodeword 0 bit 1 and ending with codeword 15 bit 86. Special treatmentis required for the last column/word.

The numerical representation of the syndrome indicates the bit position(if any) where a bit error has occurred. When a bit error has occurred,the bit is inverted (corrected.) If the syndrome is zero, no bit errorhas occurred. As in the Ultra High Speed Data Encoder, the parity bitsfor up to 16 codewords can be computed at the same time using a 16 bitwide exclusive OR operation.

The syndrome is computed as follows:

Compute Parity Bits:

Pi=XOR Codeword Bit[k]i=0 . . . 6 (K−1 )&2^(i)≠0; where “&” is a bitwisebinary AND function Syndrome=concatenation P 6|P 5|P 4|P 3|P 2|P 1|P 0

The decoded data from the FEC Decoder 801 consists of Encoded QuantizedSamples and Encoded Quantized Gain. The Encoded Gain is fed into theGain Decoder, which provides the Quantized Gain value to the Data SampleDequantizer 820.

The Data Sample Quantizer generates a lookup table containing the A-law(or Mu-law) quantizer levels corresponding to the 7 bit coded samplesusing the Quantized Gain value (the peak amplitude sample of the block).The quantizer is created using exactly the same procedure as isdescribed in the Ultra High Speed Data Encoder section, in which thelookup table has 256 entries, with each of the entries corresponding toone of the 128 possible encoded quantized sample values. However, thelookup table is used in the opposite way. Once the lookup table isgenerated with 128 entries of the possible encoded quantized samplevalues, the corresponding PCM samples are found in the table by indexingthe corresponding Encoded Quantized Samples (7 bit codes) to the tableentry.

As shown in FIG. 8A, if A-law companding is desired, an optional SampleFormat Re-Processor 830 transforms the decoded block of samples into adesired sample format, such as A-law. For either A-law or Mu-law, thedecoded block of samples corresponding to the reconstructed ultra highspeed data samples is provided to the output Buffer 840, which providesa 64 kb/s PCM companded signal as an output signal.

While preferred embodiments of the invention have been shown anddescribed herein, it will be understood that such embodiments areprovided by way of example only. Numerous variations, changes, andsubstitutions will occur to those skilled in the art without departingfrom the spirit of the invention. Accordingly, it is intended that theappended claims cover all such variations as fall within the spirit andscope of the invention.

What is claimed is:
 1. In a telecommunications subscriber unit, a method of receiving a plurality of telephone signals and for transmitting each of the telephone signals on a respective communication channel, wherein each communication channel is formed on at least one transmit radio frequency (RF) carrier, each RF carrier having a plurality of information slots and at least one of the information slots is assigned to one of the telephone signals so that the one of the telephone signals is modulated on the RF carrier; the method comprising the steps of: a) receiving and monitoring each of the telephone signals to detect a data signal in one of the telephone signals, wherein at least one of said telephone signal is a reconstructed telephone signal having a response data signal from a received RF carrier, each reconstructed telephone signal and each respective telephone signal being a channel pair; and the data signal has a corresponding data signal identification of a first type, and the response data signal has a corresponding data signal identification of a second type; b) encoding the data signal to generate a coded signal; c) checking an assignment status of the information slots responsive to detection of the data signal, the assignment status indicating whether each carrier and each information slot is unassigned or assigned to another one of the telephone signals; d) locating a predetermined number of unassigned sequential information slots; e) forming the communication channel from the unassigned sequential information slots; and f) modulating the coded signal on the communication channel; whereby the receiving and monitoring step a) further includes inhibiting the data signal identification of the first type until the forming step e) forms the communication channel.
 2. The method as recited in claim 1, wherein the step of inhibiting the data signal identification of the first type further includes inhibiting the data signal identification of the second type until the forming step e) forms the communication channel.
 3. The method as recited in claim 2, wherein the data signal and the response data signals are of a facsimile type, and the data signal identification of the first type is a 2100 Hz tone and the data signal identification of the second type is a 1800 Hz tone.
 4. In a telecommunications subscriber unit, a method of receiving a plurality of telephone signals and for transmitting each of the telephone signals on a respective communication channel, wherein each communication channel is formed on at least one transmit radio frequency (RF) carrier, each RF carrier having a plurality of information slots and at least one of the information slots is assigned to one of the telephone signals so that one of the telephone signals is modulated on the RF carrier whereby the telephone signals may include a data signal of a low speed type, a high speed type or an ultra high speed type; the method comprising the steps of: a) receiving and monitoring each of the telephone signals to detect a data signal in one of the telephone signals and determine the speed type of the data signal; b) encoding the data signal to generate a coded signal; c) checking an assignment status of the information slots responsive to detection of the data signal, the assignment status indicating whether each carrier and each information slot is unassigned or assigned to another one of the telephone signals; d) locating a predetermined number of unassigned sequential information slots, the predetermined number being a first number for a low speed type, a second number for a high speed type and a third number for an ultra high speed type; e) forming the communication channel from the unassigned sequential information slots; and f) modulating the coded signal on the communication channel.
 5. The method of claim 4, where in the predetermined number of sequential slots is one or two information slots for the low speed type, three or four information slots for the high speed type, and four information slots for the ultra high speed type.
 6. The method of claim 5, wherein the predetermined number of sequential information slots is one or two slots for the high speed type and for the ultra high speed type when the predetermined number of unassigned sequential information slots is not located.
 7. The method of claim 5, wherein each RF carrier includes four information slots, each information slot includes a guard and, and the forming step (e) forms the communication channel with one guard band.
 8. In a telecommunications subscriber unit, a method for processing a plurality of telephone signals on a respective communication channel, wherein each communication channel is formed from at least one of a plurality of information slots on a radio frequency (RF) carrier; the method comprising the steps of: a) receiving and monitoring each of the telephone signals to detect a data signal in one of the telephone signals, wherein at least one of said telephone signals is a reconstructed telephone signal having a response data signal from a received RF carrier, each reconstructed telephone signal and each respective telephone signal being a channel pair; and the data signal has a corresponding data signal identification of a first type, and the response data signal has a corresponding data signal identification of a second type; b) encoding the data signal to generate a coded signal; c) assigning an assignment status to each carrier and each information slot with respect to a telephone signal; d) selecting a predetermined number of unassigned sequential information slots; e) forming the communication channel from the unassigned sequential information slots; and f) modulating the coded signal on the communication channel; whereby the receiving and monitoring step a) further includes inhibiting the data signal identification of the first type until the forming step e) forms the communication channel.
 9. The method as recited in claim 8 wherein the step of inhibiting the data signal identification of the first type further includes inhibiting the data signal identification of the second type until the forming step e) forms the communication channel.
 10. The method as recited in claim 9 wherein the data signal and the response data signals are of a facsimile type, and the data signal identification of the first type is a 2100 Hz tone and the data signal identification of the second type is an 1800 Hz tone. 